1. Field of the Invention
The present invention relates generally to information storage systems. More particularly, the present invention relates to a system and method for managing information storage among plural disk drives.
2. Background Information
Computing systems store data within electronic storage devices such as hard disk drives. The storage capacity of these storage devices has rapidly increased as the demands for storage made by modem computing systems have increased. With the increase in capacity, there has been a concurrent increase in the performance of these storage devices as the processing speed and power of modem computing systems have improved. Many users, such as the high-end enterprise market, have become highly dependent on these high performance, high capacity storage devices. However, along with the high performance and high capacity offered by these disk drives, a need for increased reliability of such storage subsystems has also developed.
Disk array storage systems provide both improved capacity and performance, as compared to single disk devices. In a disk array storage system, multiple disk drives are used in a cooperative manner to perform, in parallel, the tasks normally performed by a single disk drive. In such a disk array storage system, data is stored in a distributed manner throughout the disk drives for parallel, high-speed access. For example, striping techniques are often used to spread large amounts of information over the multiple disk drives in the disk array storage system. However, adding multiple disk drives to a storage system reduces the reliability of the overall storage system. In particular, spreading data over multiple disk drives in a disk array increases the potential for system failure. Failure of any of the multiple disk drives translates to failure of the storage system, because the data stored on the disk drives cannot be correctly retrieved.
RAID (Redundant Array of Inexpensive Disks, also known as Redundant Array of Independent Disks) techniques are commonly used to improve reliability in disk array storage systems. There are seven xe2x80x9clevelsxe2x80x9d of standard RAID geometries. RAID level 0 provides disk-striping capabilities for improved performance, but without an accompanying increase in reliability. There are six other RAID levels (RAID levels 1-6) that configure multiple disk drives in the disk array in geometries that permit redundancy of stored data to assure data integrity in case of various failures. The fundamental concepts of RAID technology are discussed in, for example, U.S. Pat. No. 5,950,230, the disclosure of which is hereby incorporated by reference in its entirety.
In a RAID storage system, the multiple disk drives are organized into disk arrays that are managed by an array controller. The array controller presents the disk array to the user as one or more disk drives and shields the user or host system from the details of managing the redundant array. However, the cost and complexity of the array controller increases with the increased reliability offered by the higher RAID levels. For example, RAID level 6 provides for recovery from a two-drive failure, but at a penalty in cost and complexity of the array controller, because the Reed-Solomon codes used in RAID level 6 are complex and can require significant computational resources.
It would be desirable to provide a system and method for managing information storage among plural disk drives that offers high performance and high capacity information storage at a reduced cost and with reduced complexity.
A system and method are disclosed for managing information storage among plural disk drives. In accordance with exemplary embodiments of the present invention, the system includes plural host interfaces and first and second elements. The first and second elements each comprise a set of disk drives for storing information. Each of the first and second elements is associated with an element frame. Each disk drive included in the first element is connected to a different one of the plural host interfaces during the element frame of the first element. The system includes a switch controller, configurable by at least one of the plural host interfaces, for selecting among the first and second elements, and for directing information from a first one of the plural host interfaces to a selected disk drive within the first element. The system also includes a frame controller for controlling a duration of each element frame.
The present invention may also be regarded as a method for managing information storage among plural disk drives. In accordance with exemplary embodiments of the present invention, a switch controller selects among first and second elements. The first and second elements each comprise a set of disk drives for storing information. Each of the first and second elements is associated with an element frame. Each disk drive included in the first element is connected to a different one of plural host interfaces during the element frame of the first element. The switch controller is configurable by at least one of the plural host interfaces. The switch controller directs information from a first one of the plural host interfaces to a selected disk drive within the first element. A frame controller controls a duration of each element frame.